using System.ComponentModel.DataAnnotations;
using SupplierCustomerManagement.Domain.Entities;

namespace SupplierCustomerManagement.Domain.ReportForms
{
    /// <summary>
    /// 存栏统计汇总实体
    /// 用于存储羊场存栏的统计汇总数据
    /// </summary>
    public class SheepInventorySummary : BaseEntity
    {
        /// <summary>
        /// 统计日期
        /// </summary>
        [Required]
        public DateTime ReportDate { get; set; }

        /// <summary>
        /// 羊场ID
        /// </summary>
        [Required]
        public int FarmId { get; set; }

        /// <summary>
        /// 羊只类型
        /// </summary>
        [Required]
        [StringLength(20)]
        public string SheepType { get; set; }

        /// <summary>
        /// 品种
        /// </summary>
        [StringLength(50)]
        public string? Breed { get; set; }

        /// <summary>
        /// 性别
        /// </summary>
        [StringLength(10)]
        public string? Gender { get; set; }

        /// <summary>
        /// 年龄段
        /// </summary>
        [StringLength(20)]
        public string? AgeGroup { get; set; }

        /// <summary>
        /// 总数量
        /// </summary>
        [Required]
        public int TotalCount { get; set; }

        /// <summary>
        /// 健康数量
        /// </summary>
        public int? HealthyCount { get; set; }

        /// <summary>
        /// 生病数量
        /// </summary>
        public int? SickCount { get; set; }
    }
}
